package net.jwtools.tmt.service;

import java.util.List;
import java.util.Map;

import net.jwtools.tmt.domain.IVisit;
import net.jwtools.tmt.domain.MainVisit;

import org.jfree.data.time.Week;

public interface IVisitService {

	public abstract Integer countAllCompletedMainVisits();

	public abstract Integer countAllCompletedReVisits();

	public abstract Integer countAllOutstandingReVisits();

	public abstract Integer countAllOutstandingMainVisits();

	public abstract List<IVisit> getAllCompleted();
	
	public abstract List<IVisit> getAllOutstanding();
	
	public abstract List<IVisit> getVisitsBelongingTo(IVisit visit);

	public abstract void save(IVisit visit);

	public abstract Map<Week,Integer> getRegularVisitsHistoryByWeek();
	public abstract Map<Week,Integer> getReVisitsHistoryByWeek();
}